import router from "@/router";
import axios from "axios";

//判断是生产环境还是开发环境
// npm run dev---->开发环境
// npm run build---->生产环境

const isDev = process.env.NODE_ENV === 'development'
//真  开发环境， 假 生产环境
const instance = axios.create({
    baseURL: isDev ? "http://47.94.6.186:3001" : "http://xxx/api",
})
//请求拦截器（请求了都会走）
//拦截器，处理请求
instance.interceptors.request.use((config) => {
    if (localStorage.getItem("token")) {
        config.headers.token = localStorage.getItem("token")
    }
    return config
}, (err) => {
    return Promise.reject(err)
})

instance.interceptors.response.use((response) => {
    // 判断登录标识 是否有效，如果无效跳转至登录页面，如果有效，不做操作
    if (response.data.code === '10119') {
        // 没有传递token 或者 token过期
        // 跳转到登录页面 重新登录
        router.push('/login')
        return null
    } else {
        return response
    }
}, (err) => {
    return Promise.reject(err)
})

export default instance